When performing high-resolution conversion, enlargement processing, etc. of a gray-scale image inputted by, for example, a scanner or digital camera, data for a given pixel to be interpolated is determined based on the results of sum-of-products computation using data of pixels in the vicinity of the pixel to be interpolated. Examples of this type of interpolation computing method are (1) nearest neighbor interpolation, in which data of pixels nearest in position to the pixel to be interpolated are used as the data for the pixel to be interpolated, (2) bi-linear interpolation, in which sum-of-products computation is performed using data of surrounding pixels, and (3) cubic convolution interpolation, in which convoluted sum-of-products computation is performed using data of surrounding pixels.
Each of the foregoing interpolation computing methods has strengths and weaknesses. With nearest neighbor interpolation, processing time is short, but diagonal lines, for example, are made uneven (jagged), and thus image quality is poor. With bi-linear interpolation, on the other hand, processing time is comparatively short, and interpolation goes well in areas of gradual density change, but in areas of sharp density change, such as edges, interpolation makes the edges fuzzy. Again, with cubic convolution interpolation, there is some worsening of image quality, but smooth images can be obtained, and edges are interpolated without becoming fuzzy. However, processing time is comparatively long, and in cases of noise, such as a small dot in an area of gradual density change, the noise is emphasized, thus impairing image quality.
When performing high-resolution conversion, enlargement processing, etc. of, for example, an image including both text images and photographic images, a single one of the foregoing interpolation computing methods used alone is not able to ensure both resolution of the text areas and smoothness of the photograph areas.
In answer to this, methods have been proposed in which edge areas and non-edge areas of partial domains are determined based on density change therein, and different interpolation methods are used in different domains as needed. For example, Japanese Unexamined Patent Publication No. 5-135165/1993 (Tokukaihei 5-135165) discloses an image processing device which, within a local domain including a given pixel and surrounding pixels, finds maximum and minimum density values, subtracts the minimum value from the maximum value to obtain a maximum density difference of the local domain, and uses the maximum density difference to determine whether the local domain is a text domain or a photograph domain.
However, with the foregoing method, erroneous determinations may be made, for example, when noise in a local domain causes a large maximum density difference value to be obtained for a local region whose actual change in density is small. Further, in methods like the foregoing, which use density change in extracting edges, depending on the way edges are extracted, the pattern of density change in local domains may vary with change of direction of the edge. For this reason, when an image is, for example, rotated, different extracting conditions are necessary, thus complicating condition formulae, and increasing processing time.